var PRO = PRO || {};
PRO.dialog =(function(){
	function createLayer(title,html,width,callbacks,selector,isFix){
		$.layer({
			type : 1,
			fix : isFix||false,
			move: false,
			title : [title],
			area : [width, 'auto'],
			page :{
				html:html
			},
			success: function(layero,index){
				if (callbacks!=undefined) {
					callbacks.fireWith(layero,[index]);
					callbacks.empty();
				};
				layer.autoArea(index);
				$(".xubox_main").css("height", "auto");
				$(layero).find('.xubox_close').focus();
				//绑定取消按钮
				$(layero).find(".btn-cancel").click(function(){
					layer.close(index);
				});
				//弹出框解除
				selector && $.enable(selector);
			}
		});
	}
	//保存弹窗index
	function saveLayerIndex(index,save,cancel){
		$(save).attr("dialog-index",index);
		$(cancel).attr('dialog-index', index);
	}
	function openDialog(url,title,width,callbacks,selector,isFix){
		$.ajax({
				url: url,
				type: 'GET',
				async: false
			}).done(function(data){
				 if (SimpleTool.hasAjaxException(data,null))
					{
						// 如果出现了ajax异常
						return;
					}//cj
					var dialogHtml = data;
					createLayer(title,dialogHtml,width+'px',callbacks,selector,isFix);
			});
	}
	
	//图片预览层
	function createImgLayer(html){
		$.layer({
		    type: 1,
		    area: ['auto', 'auto'],
		    closeBtn: [1, true],
		    maxWidth: '70%',
		    title: false,
		    border: [0],
		    page: {html:html}
		});
	}
	return {
		openDialog:openDialog,
		createLayer:createLayer,
		createImgLayer:createImgLayer
	}
})();

/**
 * 表单弹窗
 */
PRO.formDialog = (function(){
	/**
	 * 打开一个弹窗
	 * @param url 弹窗地址
	 * @param width 弹窗宽度
	 * @param callbacks回调函数
	 *  @param option按钮样式和文字和点击打开弹窗的按钮对象(自定义样式控制)
     * @private
     */
	function _openDialog(url,width,callbacks,option){
		var width=width+"px"||"600px";
		var title=option.title||"信息";
		$.ajax({
			url: url,
			type: 'GET',
			async: false
		}).done(function(data){
			layer.open({
				title:title,
				offset: ['20px', '400px'],
				type: 1,
				skin: 'layui-layer-rim', //加上边框
				area: [width,"auto"], //宽高
				content: data,
				success: function(layero,index){
					if (callbacks!=undefined) {
						callbacks.fireWith(layero,[index]);
						callbacks.empty();
					};
				}
			});

		});
	}

	/**
	 * 关闭按钮关闭当前弹窗(最后一层)
	 * @private
     */
	function _closeCurrentDg(index){
		var _currentContent = $('#PRO-dg-wrap'+index/*$(content).attr('id')*/);//当前弹窗层
		var _currentShade = $('#PRO-dg-shade'+index/*$(content).attr('data-index')*/);//当前遮罩层
		_currentContent.find('.close-dialog').click(function(){
			_currentContent.slideUp(300,function(){
				_currentContent.remove();
				_currentShade.remove();
			});
			//_currentShade.slideUp(300,function(){
			//	_currentShade.remove();
			//});
		});
	}

	/**
	 * 外部调用关闭当前弹窗(最后一层)
	 * @private
	 */
	function _close(index){
		var _currentContent = $('#PRO-dg-wrap'+index);//当前弹窗层
		var _currentShade = $('#PRO-dg-shade'+index);//当前遮罩层
		_currentContent.slideUp(300,function(){
			_currentContent.remove();
			_currentShade.remove();
		});
		//_currentShade.slideUp(300,function(){
		//	_currentShade.remove();
		//});
	}

	/**
	 * 关闭所有弹窗
	 * @private
     */
	function _closeAllDg(){
		$('.PRO-dg-wrap').slideUp(300,function(){
			$('.PRO-dg-wrap').remove();
			$('.PRO-dg-shade').remove();
		});
		//$('.PRO-dg-shade').slideUp(300,function(){
		//	$('.PRO-dg-shade').remove();
		//});
	}

	/**
	 * 获取参数设置 obj
	 * @param selector 要锁的按钮
	 * @param bgc 背景色
	 * @param btnShow 是否显示按钮
	 * @param btnArr 按钮的数量(数组)
	 * @param hbgc 头部背景色
	 * @param hh 头部高度
	 * @param hlh 头部行高
     * @param hr 头部右边距
     * @private selector,bgc,btnShow,btnArr,hr,hbgc,hh,hlh
     */
	function _setOption(obj){
		var _mPROtion = {
			'header':{
				'height':obj.hh||45,
				'line_height': obj.hlh||50,
				'border_bottom':obj.hbb||'1px solid #eaebec',
				'background':obj.hbgc||'#fff',
				'padding_left':obj.hpl||30,
				'padding_right':obj.hr||30
			},
			'title':{
				'titleTxt':obj.titleTxt||''
			},
			'btns':{
				'btnShow':obj.btnShow||'true',
				'btnWrap':{
					'height':obj.btnwh||45,
					'line_height':obj.btnwlh||45,
					'margin_left':obj.btnwml||10
				},
				'btnArr':obj.btnArr||[{'txt':'提交','classClick':'dg-btn-save','btnColor':'dg-btn-blue'}],
				'btnClass':'dg-btn'
			},
			'dg_wrap':{
				'background':obj.bgc||'#fff'
			},
			'selector':obj.selector
		}
		//var _option = $.extend({},_defOption,option);
		return _mPROtion;
	}

	return{
		openDialog:_openDialog,
		closeCurrentDg:_closeCurrentDg,
		closeAllDg:_closeAllDg,
		close:_close,
		setOption:_setOption
	}
})();